<template>
    <view>
        <view class="search-box">
          <my-search @click="gotoSearch"></my-search>
        </view>
        <swiper class="swiper" :autoplay="true" :indicator-dots="true" :interval="3000" :duration="1000" :circular="true">
            <swiper-item v-for="(item, index) in swiperList" :key="index">
                <navigator class="swiper-item uni-bg-red" :url="`/subpkg/goods_detail/goods_detail?goods_id=${item.goods_id}`">
                    <image :src="item.image_src" mode=""></image>
                </navigator>
            </swiper-item>
        </swiper>
        <view class="nav-list">
            <view class="nav-item" v-for="(item, index) in navList" :key="index" @click="navClickHandler(item)"><image :src="item.image_src" /></view>
        </view>
        <view class="floor-list">
            <view class="floor-item" v-for="(item,i) in floorList" :key="i">
                <image :src="item.floor_title.image_src" class="floor-title"></image>

               <view class="floor-img-box">
                 <!-- 左侧大图片的盒子 -->
                 <navigator :url="item.product_list[0].url" class="left-img-box">
                   <image :src="item.product_list[0].image_src" :style="{width: item.product_list[0].image_width + 'rpx'}" mode="widthFix"></image>
                 </navigator>
                 <!-- 右侧 4 个小图片的盒子 -->
                 <view class="right-img-box">
                   <navigator :url="item2.url" class="right-img-item" v-for="(item2, i2) in item.product_list" :key="i2" v-if="i2 !== 0">
                     <image :src="item2.image_src" mode="widthFix" :style="{width: item2.image_width + 'rpx'}"></image>
                   </navigator>
                 </view>
               </view>
            </view>
        </view>
    </view>
</template>

<script>
import badgeMix from '@/mixins/tabbar-badge.js'
export default {
    data() {
        return {
            //轮播图数据
            swiperList: [],
            //分类导航的数据列表
            navList: [],
            //  楼层的数据列表
            floorList: []
        };
    },
    onLoad() {
        this.getSwiperList();
        this.getNavList();
        this.getFloorList()
    },
    methods: {
        //获取轮播图数据
        async getSwiperList() {
            const res = await uni.$http.get('/home/swiperdata');
            if (res.data.meta.status !== 200) return uni.$showMsg();
            this.swiperList = res.data.message;
        },
        //获取分类数据
        async getNavList() {
            const res = await uni.$http.get('/home/catitems');
            if (res.data.meta.status !== 200) return uni.$showMsg();
            this.navList = res.data.message;
        },
        navClickHandler(obj) {
            if (obj.name === '分类') {
                uni.switchTab({
                    url: '/pages/cate/cate'
                });
            }
        },
        //获取楼层数据
        async getFloorList(){
            const res = await uni.$http.get('/home/floordata')
            if (res.data.meta.status !== 200) return uni.$showMsg()    
            res.data.message.forEach(item=>{
                item.product_list.forEach(item1=>{
                    item1.url = '/subpkg/goods_list/goods_list?'+item1.navigator_url.split('?')[1]
                })
            })
            this.floorList = res.data.message
            console.log(this.floorList)
        },
        gotoSearch() {
          uni.navigateTo({
            url: '/subpkg/search/search'
          })
        }
    },
    // 将 badgeMix 混入到当前的页面中进行使用
      mixins: [badgeMix],
};
</script>

<style lang="scss">
swiper {
    height: 330rpx;

    .swiper-item,
    image {
        width: 100%;
        height: 100%;
    }
}
.nav-list {
    margin: 15px 0;
    display: flex;
    justify-content: space-around;
}
.nav-list .nav-item image {
    width: 128rpx;
    height: 140rpx;
}
.floor-title{
    height: 60rpx;
    width: 100%;
    display: flex;
}
.right-img-box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}

.floor-img-box {
  display: flex;
  padding-left: 10rpx;
}
.search-box {
  // 设置定位效果为“吸顶”
  position: sticky;
  // 吸顶的“位置”
  top: 0;
  // 提高层级，防止被轮播图覆盖
  z-index: 999;
}
</style>
